package com.zmn.oms.model.vo.work;

import lombok.Data;
import lombok.ToString;

import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * 类描述：派单
 *
 * @author  liuying
 * @date   2019/01/25 11:51
 */
@Data
@ToString(callSuper = true)
public class DistributeVO {
    private Long orderId;
    private Long workId;
    private String dutyInfo;

    /**
     * 是否只查询基础师傅列表，默认为否
     */
    private boolean onlyBaseMasterList;

    /**
     * 同位置、同品类工单，已派给工程师
     */
    ZsOrderDistributeVO dutyRecentMaster;

    /**
     * 自动派单工程师
     */
    ZsOrderDistributeVO autoDistributeMaster;

    /**
     * 工程师列表（渠道为天猫勤鸽店时为消耗派单列表）
     */
    List<ZsOrderDistributeVO> masterList;

    /**
     * 推荐列表（渠道为天猫勤鸽店时为正常派单列表）
     */
    List<ZsOrderDistributeVO> recommendMasterList;

    /**
     * 加载"非离职+技能+服务范围"的工程师（把上方满足条件的工程师排除在外）
     */
    List<ZsOrderDistributeVO> nonDistributeMasterList;

    /**
     * 非网格不可派单工程师
     */
    List<ZsOrderDistributeVO> nonGridDistributeMasterList;

    /**
     * 已派单工程师ID
     */
    Integer masterId;

    /**
     * 订单派单工程师名称
     */
    String masterName;

    /**
     * 服务分组
     */
    private int productGroupId;

    /**
     * 服务分组
     */
    private String productGroupName;

    /**
     * 主技能id
     */
    private String mainSkillId;

    /**
     * 主技能名称
     */
    private String mainSkillName;

    /**
     * 订单经度
     */
    private Double longitude;

    /**
     * 订单纬度
     */
    private Double latitude;

    /**
     * 网格id
     */
    private Integer gridId;

    /**
     * 返修工单工程师id
     */
    private Integer reworkMasterId;

    /**
     * 是否返修单
     */
    boolean reworkStatus;

    /**
     * 派单业务类型 0.未知 1.C 2.F 3.B 100.特殊
     */
    private int distributeBizType;

    /**
     * 特殊派单类型 1.特殊服务商 2.天猫差异派单 3.渠道指定派单
     */
    private int specialDistributeType;

    /**
     * 是否开启简单
     */
    boolean simpleStatus;

    /**
     * 是否开启推荐
     */
    boolean recommendStatus;

    /**
     * 是否开启公平
     */
    boolean fairStatus;

    /**
     * 直营权重map
     */
    Map<String, Integer> weightMap;

    /**
     * 非直营权重map
     */
    Map<String, Integer> weightNonMap;

    /**
     * vip标识(1否2是)
     */
    private Integer vipOrder;

    /**
     * 大促标识(1否2是)
     */
    private Integer bigPromotionOrder;

    /**
     * 天猫服务类型名称
     */
    private String serviceCodeName;

    /**
     * 是否允许派单
     */
    private boolean allowDistributeOrder;

    /**
     * 派单规则
     */
    private Integer distributeRule;

    /**
     * 派单规则文本展示
     */
    private String distributeRuleName;

    /**
     * 派单路径
     */
    private Integer distributeWay;

    /**
     * 派单入口
     */
    private Integer distributeEntry;

    /**
     * 网格信息
     */
    private List<GridVO> gridList;

    /**
     * 自动派单时间
     */
    private Date autoDistributeTime;

    /**
     * 是否开通动态库存城市
     */
    private boolean stockCity;

    /**
     * 派单失败原因
     */
    private String distributeFailReason;
}
